// -----------------------------------------------------------------------------
// Generate By Furion Tools v1.6.0                            
// -----------------------------------------------------------------------------

using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;

#nullable disable

namespace iemtm.WeChat.Core
{
    public partial class WeixinConfig : IEntity<MasterDbContextLocator>, IEntityTypeBuilder<WeixinConfig, MasterDbContextLocator>
    {

        public int Id { get; set; }
        public string appID { get; set; }
        public string appsecret { get; set; }
        public string access_token { get; set; }
        public string jsapi_ticket { get; set; }
        public string ApiUrl { get; set; }
        public string domain { get; set; }
        public int? expires_in { get; set; }
        public DateTime? getTime { get; set; }
        public DateTime? expiresTime { get; set; }
        public DateTime? jsapi_ticket_expiresTime { get; set; }
        public int? pushStartTime { get; set; }
        public int? pushStopTime { get; set; }
        public int? pushMinute { get; set; }
        public string bindAccess_template_id { get; set; }
        public string unbindAccess_template_id { get; set; }
        public string alarmMsg_template_id { get; set; }
        public string annouce_template_id { get; set; }
        public string gensetStart_template_id { get; set; }
        public string gensetStop_template_id { get; set; }
        public string gensetMaintain_template_id { get; set; }
        public string importantInfo_template_id { get; set; }
        public string indicators_template_id { get; set; }
        public string cancelclosedown_template_id { get; set; }
        public string audit_template_id { get; set; }
    
        public void Configure(EntityTypeBuilder<WeixinConfig> entityBuilder, DbContext dbContext, Type dbContextLocator)
        {
                entityBuilder.HasKey(e=>e.Id);

                entityBuilder.Property(e => e.ApiUrl)
                    .HasMaxLength(100)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.Id).ValueGeneratedOnAdd();

                entityBuilder.Property(e => e.access_token)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.alarmMsg_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.annouce_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.appID)
                    .HasMaxLength(100)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.appsecret)
                    .HasMaxLength(100)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.audit_template_id).HasMaxLength(200);

                entityBuilder.Property(e => e.bindAccess_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.cancelclosedown_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.domain)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.expiresTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.gensetMaintain_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.gensetStart_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.gensetStop_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.getTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.importantInfo_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.indicators_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.jsapi_ticket)
                    .HasMaxLength(200)
                    .IsUnicode(false);

                entityBuilder.Property(e => e.jsapi_ticket_expiresTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.unbindAccess_template_id)
                    .HasMaxLength(200)
                    .IsUnicode(false);
        }

    }
}

